package com.molichuxing.gateway.contants;

import java.util.Arrays;
import java.util.List;

import com.molichuxing.services.property.OrderPayWayEnum;

/**
 * 订单常量
 * 
 * @author zoumingyu
 * @date 2019年9月21日
 *
 */
public class OrderConst {

	/**
	 * 订购订单有效时间(分钟)
	 */
	public static final Integer ORDER_VALID_TIME = 10;
	/**
	 * 加购订单有效时间(分钟)
	 */
	public static final Integer PURCHASE_VALID_TIME = 2;
	/**
	 * 支付有效时间(分钟)-(还款、结算)
	 */
	public static final Integer PAY_VALID_TIME = 120;

	/**
	 * 赠送里程每公里单价
	 */
	public static final Integer GIFT_UNIT_PRICE = 1;
	/**
	 * 超里程每公里单价
	 */
	public static final Integer MILEAGE_UNIT_PRICE = 2;
	/**
	 * 超期每天单价
	 */
	public static final Integer DAY_UNIT_PRICE = 120;

	/**
	 * 客服电话
	 */
	public static final String SERVICE_HOTLINE = "400-0311-555";

	/**
	 * 专属订单支付结果1
	 */
	public static final String PAY_EXCLUSIVEL_SUCCESS_EXPLAIN_ONE = "为避免您用车受影响，请您及时到店办理提车";
	/**
	 * 专属订单支付结果2
	 */
	public static final String PAY_EXCLUSIVEL_SUCCESS_EXPLAIN_TWO = "订单审核中，客服预计在15分钟内与您联系，请耐心等待。客服热线："
			+ OrderConst.SERVICE_HOTLINE + "；下一期还款日为${nextPayableDate}，还款金额${nextPayable}元，请勿逾期";
	/**
	 * 专属订单还款支付结果1
	 */
	public static final String PAY_EXCLUSIVEL_REPAY_SUCCESS_EXPLAIN_ONE = "下一期还款日为${nextPayableDate}，还款金额${nextPayable}元，请勿逾期";
	/**
	 * 专属订单还款支付结果2
	 */
	public static final String PAY_EXCLUSIVEL_REPAY_SUCCESS_EXPLAIN_TWO = "恭喜您已还清全部期数，了解过户或退车请咨询"
			+ OrderConst.SERVICE_HOTLINE;

	/**
	 * 订阅订单支付结果1
	 */
	public static final String PAY_SUBSCRIBE_SUCCESS_EXPLAIN_ONE = "订单审核中，客服预计在15分钟内与您联系，请耐心等待。客服热线："
			+ OrderConst.SERVICE_HOTLINE;
	/**
	 * 订阅订单支付结果2
	 */
	public static final String PAY_SUBSCRIBE_SUCCESS_EXPLAIN_TWO = "您已续订成功，原订单到期后，本订单开始生效。";

	/**
	 * 支付结果异常说明
	 */
	public static final String PAY_ERROR_EXPLAIN = "抱歉，支付异常，如您已扣款，请联系客服" + OrderConst.SERVICE_HOTLINE + "，请勿重复支付";

	/**
	 * 大屏支付结果成功说明1
	 */
	public static final String AIO_PAY_SUCCESS_EXPLAIN_ONE = "订单审核中，客服预计在15分钟内与您联系，请耐心等待。客服热线："
			+ OrderConst.SERVICE_HOTLINE;

	/**
	 * 大屏支付结果成功说明2
	 */
	public static final String AIO_PAY_SUCCESS_EXPLAIN_TWO = "请在门店工作人员指导下找到并确认所提车的车辆后，再回到智能终端刷身份证办理提车";

	/**
	 * 大屏支付结果异常说明
	 */
	public static final String AIO_PAY_ERROR_EXPLAIN = "请点击重试。如已扣款，请联系客服处理！" + OrderConst.SERVICE_HOTLINE + "，请勿重复支付。";

	/**
	 * 大屏订单详情页面客服说明
	 */
	public static final String AIO_ORDER_SERVICE_EXPLAIN = "如有疑问请拨打" + SERVICE_HOTLINE;

	/**
	 * 订单待审核说明
	 */
	public static final String TRADE_UNAUDIT_EXPLAIN = "订单排队审核中，请您耐心等待，如需加急，请致电客服" + SERVICE_HOTLINE;
	/**
	 * 订单审核驳回说明
	 */
	public static final String TRADE_REJECTED_EXPLAIN = "抱歉，您的订单审核被驳回，如有疑问，请致电客服" + SERVICE_HOTLINE;
	/**
	 * 订单审核未通过，待退款说明
	 */
	public static final String TRADE_REFUND_EXPLAIN = "抱歉！您的订单审核未通过，正在为您办理退款手续，如有疑问请致电客服" + SERVICE_HOTLINE;
	/**
	 * 订单交易结束说明
	 */
	public static final String TRADE_FINISH_EXPLAIN = "退款手续已完成，如有疑问请致电客服" + SERVICE_HOTLINE;
	/**
	 * 订单待提车说明
	 */
	public static final String TRADE_UNDELIVERY_EXPLAIN = "请尽快到店办理提车";
	/**
	 * 订单待用车说明
	 */
	public static final String TRADE_UNUSE_EXPLAIN = "您已续租成功，原订单到期后本订单生效。";
	/**
	 * 订单待验车说明
	 */
	public static final String RETURN_UNINSPECTED_EXPLAIN = "您已成功办理还车，车辆验车中，保证金退还情况，请致电客服热线：" + SERVICE_HOTLINE;
	/**
	 * 订单验车报告待确认说明
	 */
	public static final String RETURN_UNCONFIRM_EXPLAIN = "请及时确认验车报告，确认提交后，方可办理保证金退款，详情致电客服热线：" + SERVICE_HOTLINE;
	/**
	 * 订单验车报告待人工介入说明
	 */
	public static final String RETURN_INTERVENE_EXPLAIN = "您的验车报告反馈已成功提交，需人工处理，如需加急办理，请致电客服热线：" + SERVICE_HOTLINE;
	/**
	 * 订单待结算缴费说明
	 */
	public static final String RETURN_UNPAID_EXPLAIN = "为避免影响您保证金的退还，请您及时完成缴费！详情致电客服：" + SERVICE_HOTLINE;

	// 微信支付方式
	public static final List<OrderPayWayEnum> WXPAY = Arrays.asList(OrderPayWayEnum.AIO_WXPAY,
			OrderPayWayEnum.WXPAY_MWEB, OrderPayWayEnum.WXPAY_APP, OrderPayWayEnum.WXPAY_JSAPI,
			OrderPayWayEnum.WXPAY_NATIVE, OrderPayWayEnum.WXPAY_APPLET);
	// 支付宝支付方式
	public static final List<OrderPayWayEnum> ALPAY = Arrays.asList(OrderPayWayEnum.ALPAY_AIO,
			OrderPayWayEnum.ALPAY_MWEB, OrderPayWayEnum.ALPAY_APP);
	// 银联支付方式
	public static final List<OrderPayWayEnum> UNIONPAY = Arrays.asList(OrderPayWayEnum.AIO_POS,
			OrderPayWayEnum.AIO_KEYBOARD, OrderPayWayEnum.UNIONPAY_MWEB, OrderPayWayEnum.UNIONPAY_APP);
	// 线下支付方式
	public static final List<OrderPayWayEnum> OFFLINE = Arrays.asList(OrderPayWayEnum.OFFLINE);
	// 智能终端支付方式
	public static final List<OrderPayWayEnum> AIO = Arrays.asList(OrderPayWayEnum.AIO_WXPAY, OrderPayWayEnum.ALPAY_AIO,
			OrderPayWayEnum.AIO_POS, OrderPayWayEnum.AIO_KEYBOARD);
	// APP支付方式
	public static final List<OrderPayWayEnum> APP = Arrays.asList(OrderPayWayEnum.WXPAY_APP, OrderPayWayEnum.ALPAY_APP,
			OrderPayWayEnum.UNIONPAY_APP);
	// 网页支付方式
	public static final List<OrderPayWayEnum> MWEB = Arrays.asList(OrderPayWayEnum.WXPAY_MWEB,
			OrderPayWayEnum.ALPAY_MWEB, OrderPayWayEnum.UNIONPAY_MWEB);
	// 公众号支付方式
	public static final List<OrderPayWayEnum> JSAPI = Arrays.asList(OrderPayWayEnum.WXPAY_JSAPI);
	// 小程序支付方式
	public static final List<OrderPayWayEnum> APPLET = Arrays.asList(OrderPayWayEnum.WXPAY_APPLET);
	// 扫码支付方式
	public static final List<OrderPayWayEnum> NATIVE = Arrays.asList(OrderPayWayEnum.WXPAY_NATIVE);
}
